package com.nfit.shopweb.service;

import com.nfit.shopmodel.entity.system.SysMenu;
import com.nfit.shopmodel.vo.system.SysMenuVo;
import io.swagger.v3.oas.annotations.media.Schema;

import java.util.List;

/**
 * ClassName:SysMenuService
 * Package:com.nfit.shopweb.service
 * Description
 *
 * @Author L
 * @Create 2024/11/19 19:25
 */
@Schema(description = "菜单业务接口")
public interface SysMenuService {
    /**
     *查询所有的树形菜单
     */
    List<SysMenu> menuList();


    /**
     * 用户的所对应菜单列表
     * @return 用户的所对应菜单列表
     */
    List<SysMenuVo> findUserMenu();

    /**
     * 添加菜单
     * @param sysMenu 菜单实体
     */
    void save(SysMenu sysMenu);

    /**
     * 修改菜单
     * 根据实体里面专递的id作为条件
     * @param sysMenu 菜单实体
     */
    void update(SysMenu sysMenu);

    /**
     * 根据id删除菜单
     * @param id 菜单id
     */
    void delete(Long id);
}
